home *** CD-ROM | disk | FTP | other *** search
- unit MonImplU;
- {$ifdef Ver93} { C++ Builder 1.0x }
- {$define DelphiLessThan4}
- {$endif}
- {$ifdef Ver100} { Delphi 3.0x }
- {$define DelphiLessThan4}
- {$endif}
- {$ifdef Ver110} { C++ Builder 3.0x }
- {$define DelphiLessThan4}
- {$endif}
-
- interface
-
- uses
- Windows, ActiveX, ComObj, SMIntf;
-
- type
- TSMClient = class(TComObject, ISMClient)
- protected
- function RegisterClient(ID: Integer; Name: PChar;
- Instance, SignalProc: Pointer): WordBool; stdcall;
- function AddStatement(Statement: PChar; Len: Integer): WordBool; stdcall;
- end;
-
- implementation
-
- uses
- ComServ, MonLibU;
-
- { TSMClient }
-
- function TSMClient.AddStatement(Statement: PChar; Len: Integer): WordBool;
- begin
- Result := MonLibU.WriteRoutine(nil, Statement, Len)
- end;
-
- function TSMClient.RegisterClient(ID: Integer; Name: PChar; Instance,
- SignalProc: Pointer): WordBool;
- var
- WP: TWriteProc;
- begin
- Result := MonLibU.RegisterClient(ID, Name, WP, TObject(Instance), SignalProc) <> nil
- end;
-
- initialization
- TComObjectFactory.Create(ComServer, TSMClient, Class_SMClient,
- 'SMClient', '', ciSingleInstance{$ifndef DelphiLessThan4}, tmSingle{$endif});
- end.
-